{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Bootstrap leptokurtotic equity returns :: SPX\n",
    "\n",
    "Bootstrapping has two benefits: small-sample statistics\n",
    "and simulation from controlled population.\n",
    "\n",
    "Our source code is sufficiently general to be applied to other\n",
    "financial assets besides the equities market index SPX:\n",
    "\n",
    "- Efficient storage and rescaling of empirical data.\n",
    "    - Normalize, but retain features of the empirical distribution.\n",
    "- Design bootstrap to study alternate histories.\n",
    "    - Visualize sample price paths.\n",
    "    - Bootstrap for small-sample statistics.\n",
    "    - Bootstrap for estimating probabilities of events.\n",
    "\n",
    "Bootstrapping facilitates the study of small-sample behaviour for which\n",
    "asymptotic statistical theory is unsuitable, or where closed-form\n",
    "mathematical analysis is intractable.\n",
    "\n",
    "In particular, we demonstrate:\n",
    "\n",
    "- \"geovolatility\" is greater than volatility (approximately 10% to 20% more),\n",
    "  thus there is more uncertainty surrounding the geometric mean rate,\n",
    "  relative to the arithmetic mean rate, especially during downturns.\n",
    "\n",
    "-  how one can estimate the probability that an asset will reach\n",
    "   below a certain price level during some fixed time duration.\n",
    "\n",
    "The idea in **Appendix 1** is to mix in synthetic data\n",
    "derived from a theoretical model of the market.\n",
    "We can express anticipated market conditions by\n",
    "altering the parametization of the population array,\n",
    "and also by overlaying the structure of a theoretical\n",
    "model to produce hybrid results.\n",
    "\n",
    "- Specify *hybrid population array* using synthetic rates of return\n",
    "  from GM(2) Gaussian Mixture model."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### What is bootstrapping?\n",
    "\n",
    "> In statistics, *bootstrapping* is any test or metric that relies\n",
    "on random sampling with replacement. Bootstrapping allows assigning\n",
    "measures of accuracy (defined in terms of bias, variance, confidence\n",
    "intervals, prediction error) to sample estimates.\n",
    "This technique allows estimation of the sampling distribution\n",
    "of almost any statistic using resampling methods.\n",
    "\n",
    "> Bootstrapping is the practice of estimating properties of an estimator\n",
    "(such as its variance) by measuring those properties sampling from\n",
    "an approximating distribution. One standard choice for an approximating\n",
    "distribution is the empirical distribution function of the observed data.\n",
    "In the case where a set of observations can be assumed to be from an\n",
    "independent and identically distributed population, this can be\n",
    "implemented by constructing a number of resamples with replacement.\n",
    "\n",
    "> It may also be used for constructing hypothesis tests.\n",
    "It is often used as an alternative to statistical inference\n",
    "based on the assumption of a parametric model when that\n",
    "assumption is in doubt, or where parametric inference is\n",
    "impossible or requires complicated formulas for the\n",
    "calculation of standard errors.\n",
    "\n",
    "> ***The KEY IDEA of bootstrapping is that inference about a population\n",
    "from sample data (sample → population) can be modelled by resampling\n",
    "the sample data and performing inference about a sample from\n",
    "resampled data (resampled → sample). As the population is unknown,\n",
    "the true error in a sample statistic against its population value is unknown.\n",
    "In bootstrap-resamples, the 'population' is in fact the sample, and this\n",
    "is known; hence the quality of inference of the \n",
    "\"true\" sample from resampled data (resampled → sample) is measurable.***\n",
    "(Credit goes to Bradley Efron at Stanford University.)\n",
    "\n",
    "Reference: our edit of\n",
    "https://en.wikipedia.org/wiki/Bootstrapping_(statistics)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### How can bootstrapping be applied in finance?\n",
    "\n",
    "In theory, asset prices are generally modeled by Lévy stochastic processes.\n",
    "Some parametizations lead to infinite-variance models which empirically\n",
    "exhibit so-called \"fat tails.\" Athreya (1987) states,\n",
    "\"Unless one is reasonably sure that the underlying distribution\n",
    "is not heavy tailed, one should hesitate to use the naive bootstrap.\"\n",
    "Our data analysis shows that Gaussian mixture models which have\n",
    "finite variance are sufficient to model leptokurtotic assets.\n",
    "\n",
    "*If* the data is temporally correlated, bootstrapping will destroy the\n",
    "inherent correlations. Our broad practical justification\n",
    "in favor of bootstrapping here is that for short-term financial\n",
    "time-series, most frequently, the best in-sample fit of an\n",
    "ARIMA model to log(price) is AR(1) with unit root.\n",
    "This implies that the underlying stochastic process is *memoryless*.\n",
    "To add further credence, studies of post-sample performances\n",
    "regularly show that it is extremely difficult to surpass the\n",
    "most current price as the best forecast of prices over long\n",
    "future horizons among all competing models.\n",
    "\n",
    "The bootstrap procedure is ideal when the theoretical distribution\n",
    "of a statistic of interest is analytically complicated.\n",
    "Here we cover the *geometric* (not the traditional,\n",
    "arithmetic) mean rates of return for very small sample sizes.\n",
    "Our computation of geometric mean rates includes the effect\n",
    "of varying non-Gaussian kurtosis (fourth central moment),\n",
    "hence bootstrapping will give us numerical estimates\n",
    "where the mathematics is analytically intractable.\n",
    "\n",
    "\n",
    "References:\n",
    "\n",
    "- fecon235, 2017 Jupyter notebook, Gaussian Mixture and Leptokurtotic Assets,\n",
    "  https://git.io/gmix\n",
    "\n",
    "- Athreya, K.B., 1987, Bootstrap of the mean in the infinite variance case,\n",
    "  [Ann. Stats. 15:2:724-731](https://projecteuclid.org/download/pdf_1/euclid.aos/1176350371).\n",
    "  \n",
    "- URL shortcut for this notebook: https://git.io/bootspx  "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "*Dependencies:*\n",
    "\n",
    "- fecon236 >= 10.7.1, source code, https://github.com/MathSci/fecon236\n",
    "- fecon235 data file in `nb` directory, `boots_ndl_d4spx_1957-2018.csv.gz`\n",
    "     \n",
    "*CHANGE LOG*\n",
    "\n",
    "    2018-07-31  First draft version."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import fecon236 as fe\n",
    "#  esp. the sim and bootstap modules."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      " !:  Code for this project straddles python27 and python3.\n",
      " ::  Python 2.7.14\n",
      " ::  IPython 5.7.0\n",
      " ::  jupyter_core 4.4.0\n",
      " ::  notebook 5.4.0\n",
      " ::  matplotlib 1.5.1\n",
      " ::  numpy 1.11.3\n",
      " ::  scipy 1.0.0\n",
      " ::  statsmodels 0.8.0\n",
      " ::  sympy 1.1.1\n",
      " ::  pandas 0.22.0\n",
      " ::  pandas_datareader 0.6.0\n",
      " ::  fecon236 10.7.1\n",
      " ::  Repository: fecon235 v6.18.0623 develop\n",
      " ::  Timestamp: 2018-08-01T18:42:07Z\n"
     ]
    }
   ],
   "source": [
    "#  PREAMBLE-p10.18.0714 :: Settings, https://git.io/236pa\n",
    "from __future__ import absolute_import, print_function, division\n",
    "fe.system.specs()\n",
    "%load_ext autoreload\n",
    "%autoreload 2\n",
    "#       Use 0 to disable autoreload when a module is modified.\n",
    "#  NOTEBOOK DISPLAY OPTIONS...\n",
    "fe.pd.set_option('display.notebook_repr_html', False)\n",
    "#       Represent pandas DataFrames as text; not HTML representation.\n",
    "from IPython.display import HTML  # Useful for snippets from web.\n",
    "#  e.g. HTML('<iframe src=http://en.mobile.wikipedia.org/?useformat=mobile \\\n",
    "#            width=700 height=350></iframe>')\n",
    "from IPython.display import Image\n",
    "#  e.g. Image(filename='holt-winters-equations.png', embed=True)\n",
    "#                  url= Also works instead of filename.\n",
    "from IPython.display import YouTubeVideo\n",
    "#  e.g. YouTubeVideo('1j_HxD4iLn8', start='43', width=600, height=400)\n",
    "from IPython.core import page\n",
    "get_ipython().set_hook('show_in_pager', page.as_hook(page.display_page), 0)\n",
    "#  Or equivalently in config file: \"InteractiveShell.display_page = True\",\n",
    "#  which will display results in secondary notebook pager frame in a cell.\n",
    "%matplotlib inline\n",
    "#  Generate PLOTS inside notebook, \"inline\" generates static png,\n",
    "#  whereas \"notebook\" argument allows interactive zoom and resize."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true
   },
   "source": [
    "### Pre-computing the data file\n",
    "\n",
    "We have created a CSV data file readable by Python which encodes\n",
    "51 years of S&P 500 index data, SPX rates of return.\n",
    "\n",
    "This routine may be applied to *any* time-series:\n",
    "\n",
    "- Take differences of logged price, then normalize.\n",
    "- Rates of return retain original features, but rescaled to N(0,1).\n",
    "- Archive resulting file on disk to minimize download and computing time.\n",
    "- Optionally, compress file (.gz works best) to save on disk space.\n",
    "\n",
    "We show the **RECIPE** below for replication purposes. \n",
    "\n",
    "\n",
    "```\n",
    "On 2018-06-30, we let fecon235/nb for notebooks\n",
    "be our working directory...\n",
    "\n",
    ">>> spx = fe.get(fe.d4spx)\n",
    " ::  S&P 500 prepend successfully goes back to 1957.\n",
    "\n",
    ">>> fe.stat(spx)\n",
    "                  Y\n",
    "count  16043.000000\n",
    "mean     611.773980\n",
    "std      662.320517\n",
    "min       38.980000\n",
    "25%       95.755000\n",
    "50%      267.050000\n",
    "75%     1129.500000\n",
    "max     2872.870000\n",
    "kurtosis  3.393829\n",
    "\n",
    ">>> fe.gm2gem(spx, yearly=256, b=3.5)\n",
    "Geometric  mean rate: 5.0103\n",
    "Arithmetic mean rate: 6.5026\n",
    "sigma: 15.4936\n",
    "kurtosis (Pearson): 31.5192\n",
    "GM(2), sigma1: 6.0996\n",
    "GM(2), sigma2: 54.2276\n",
    "GM(2), q:  0.0699\n",
    "GM(2), b:  3.5\n",
    "yearly: 256\n",
    "N: 16042\n",
    "\n",
    "GM(2) refers to the parameters of a Gaussian mixture distribution.\n",
    "In https://git.io/gmix we analytically and visually show how a\n",
    "Gaussian Mixture model handles \"fat tail\" risk of leptokurtotic\n",
    "financial assets under small-sample conditions.\n",
    "\n",
    "Interestingly, b=2.5 and b=3.0 were inadequate for real solutions.\n",
    "Kurtosis for a Gaussian distribution in theory is 3, but here\n",
    "that statistic is extremely high at 31.52, so b=3.5 finally worked.\n",
    "\n",
    "The initial price of the SPX series is 46.20 on 1957-01-02.\n",
    "And the tailvalue is 2718.37 on 2018-06-29.\n",
    "Sample size N for prices is 16043, while it is obviously one\n",
    "less for data with one-period lag.\n",
    "\n",
    ">>> fe.bs.writefile_normdiflog(spx, 'boots_ndl_d4spx_1957-2018.csv')\n",
    " ::  Dataframe written to file: boots_ndl_d4spx_1957-2018.csv\n",
    "\n",
    "The size of the CSV file is 422805 bytes, but after gz compression\n",
    "it shrank to 155776 bytes: boots_ndl_d4spx_1957-2018.csv.gz\n",
    "which shall be git preserved in fecon235/nb.\n",
    "```"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Decrypt the CSV data file\n",
    "\n",
    "We read the file on disk to create a numpy array of pre-computed values\n",
    "into computer memory. This array will be *repetitively* called\n",
    "to be bootstrapped into prices which are constructed from\n",
    "the cumulative product of financial returns."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mSignature:\u001b[0m \u001b[0mfe\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mbs\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcsv2ret\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdatafile\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmean\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m0.065026\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0msigma\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m0.154936\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myearly\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m256\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
       "\u001b[0;31mSource:\u001b[0m   \n",
       "\u001b[0;32mdef\u001b[0m \u001b[0mcsv2ret\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdatafile\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmean\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mSPXmean\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0msigma\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mSPXsigma\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myearly\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m256\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0;34m'''Reform empirical N(0, 1) rates distribution as returns array.'''\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0mdf\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mreadcsv\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdatafile\u001b[0m\u001b[0;34m)\u001b[0m    \u001b[0;31m# Dataframe of normalized RATES of return.\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0mnormarr\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mdf\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'Y'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvalues\u001b[0m  \u001b[0;31m# That dataframe expressed as array.\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0;31m#                .values converts to numpy ARRAY form.\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0;31m#      The pandas index will no longer matter.\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0;31m#      Next, form an array to efficiently bootstrap later.\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0mpoparr\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0msim\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mnorat2ret\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnormarr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmean\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0msigma\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myearly\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0;31m#  TIP: For repetitive simulations, poparr should be PRE-COMPUTED.\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0;31m#     \"POPULATION\" array in RETURNS form (no longer rates):\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0;32mreturn\u001b[0m \u001b[0mpoparr\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
       "\u001b[0;31mFile:\u001b[0m      /media/yaya/virt18g/virt/dbx/Dropbox/ipy/fecon236/fecon236/boots/bootstrap.py\n",
       "\u001b[0;31mType:\u001b[0m      function\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# A look under the hood:\n",
    "fe.bs.csv2ret??"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(0.065026, 0.154936)"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#  Let's document the numerical values of (mean, sigma) for the record:\n",
    "(fe.bs.SPXmean, fe.bs.SPXsigma)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "#  At this point, the user could specify their mean and sigma,\n",
    "#  but we shall use actual values computed from 51-year history:\n",
    "\n",
    "poparr = fe.bs.csv2ret('boots_ndl_d4spx_1957-2018.csv.gz',\n",
    "                       mean=fe.bs.SPXmean, sigma=fe.bs.SPXsigma,\n",
    "                       yearly=256)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "For our custom array, we use the fitted values corresponding\n",
    "to the first two centralized moments, arithmetic `mean` and `sigma`^2.\n",
    "But they can be set to any reasonable values.\n",
    "We can regards them as the *gross* Gaussian descriptors,\n",
    "since the *empirical data still contains non-Gaussian events.*\n",
    "\n",
    "Given the initial price, `poparr` contains all the information\n",
    "necessary to reconstitute the original price time-series,\n",
    "if we process `poparr` sequentially with the original Gaussian descriptors.\n",
    "\n",
    "Our key bootstrap idea is to resample from the rescaled `poparr` randomly\n",
    "with our choice of the gross \"population\" descriptors."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(16042,)"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#  Sanity check on array shape, expect: (16042,)\n",
    "#  from which we can see the population size:\n",
    "poparr.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([ 0.99566548,  1.00098084,  1.00317372])"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#  Illustrate the KEY IDEA by our helper function:\n",
    "fe.bs.bootstrap(3, poparr)\n",
    "\n",
    "#  which outputs an array of three random values from poparr.\n",
    "#  Rerun this cell, to see how resampling would work."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Simulation by boostrap from empirical data\n",
    "\n",
    "It is very interesting to simulate from past observations,\n",
    "rather than directly from a RNG random number generator,\n",
    "and then to *visually see* the results.\n",
    "\n",
    "For enthusiasts of \"technical chart analysis\"\n",
    "our bootstrapped charts may exhibit familiar patterns\n",
    "such as regions of support and resistance, trendlines, etc.\n",
    "This sense of familiarity is good indication that\n",
    "the simulation has been reasonable derived.\n",
    "\n",
    "The important point here is that we know the\n",
    "generating mechanism which reverse-engineers\n",
    "the gross statistics of the \"population\" (see RECIPE above).\n",
    "We can verify that the statistics estimated from ***subsamples***\n",
    "*deviate much further than what we would expect*.\n",
    "This happens because our bootstrapping technique\n",
    "retains the non-Gaussian distributional features of the population\n",
    "(despite normalization which is merely rescaling).\n",
    "\n",
    "For example, the subsample statistics show signs\n",
    "of leptokurtotic returns, where kurtosis varys\n",
    "considerably, though the population kurtosis is\n",
    "31.52 (one would theoretically expect 3 exactly if\n",
    "the underlying stochastic process was Gaussian)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xac770dcc>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Geometric  mean rate: 0.4954\n",
      "Arithmetic mean rate: 1.4273\n",
      "sigma: 13.4077\n",
      "kurtosis (Pearson): 6.4581\n",
      "GM(2), sigma1: 12.7022\n",
      "GM(2), sigma2: 46.9268\n",
      "GM(2), q:  0.009\n",
      "GM(2), b:  3.5\n",
      "yearly: 256\n",
      "N: 255\n",
      "---------------------------------------0\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXkAAAETCAYAAADTbHYBAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAIABJREFUeJztvXeclOXV//8+q1KkLUUWkCYgCKKu2KPixoI1amKJsWJ7jEYf86iJmuY3JkajiTHlMeYX/YImX3uNRhELKxJAVARUihQXEKQ3KQIL5/fHmWFnZqeXnZl7z/v12tfOXWbu6+y985kzn+tc1yWqiuM4jhNMKordAMdxHKdwuMg7juMEGBd5x3GcAOMi7ziOE2Bc5B3HcQKMi7zjOE6AcZF38oaIXCYi7xa5DX1EZKeIlO3/toiMEpE7i90OJxiU7RvBSY2IfC4ixzfxZfM+8EJEjhORxcVsQypE5E4RmSEi20XkF2k+Z4yInFig9qT8wBWR+0TkMxFZLyIzReSSmOM7ReSr0M8GEfn/Yl6/PrQ/fHx4IWJxcmP3YjfAcdJAKIJwZ8hc4EfA99M5WUT2BA4B3ilQe9L5m20ETlfVuSJyODBGROaq6uTQcQUOVNXPEzx/oqq6sJc4nskHFBF5DOgNvBzKsm6JsDJGisgiEVktIteIyKEiMl1E1ojInyNe4zIRmSAifxaRdaFsL9U3g4pE54tIdxF5KXTdz0TkqohjLUTkARFZIiJfiMgfRGSPkBi+CvSIyBi7ichhIvJ+KAv9UkR+Fxk+cLGILBSRFSLyk1TXCR2rFZFvhx4fHfpbnRraPl5EPkoUtKr+Q1Vfx4QzHU4A/qOq25OdJCKVIvJyKI7Vocd7RxwfKSLzQ3+X+SLyPRHZD/grcFTob7YmQZt/qapzQ4+nAO8CR0VeHteIssdvYEBR1UuBRcAZqtpeVSNF8HBgAPBd4AHgJ8DxwFDgfBE5NuLcI7AstTPwf4DnRaQyyaWTnf9UqE3dgPOA34hITejYz0LtOhA4KPT4Z6q6GTgVWKqq7UKxLAP+CDygqh2A/sDTMe04GtgXOBH4hYgMSnad0LF3gHB7hgPzQ78BjgNqk8SdKacB/07jvArg/wK9sA/tzcBfYNe3gT8CJ6tqe+AbwDRVnY19o5gU+pt1SnUREWkNHAZ8GnPoHRFZKiLPikifmGMHhz58ZovIz8q5HyTI+E0JPhKzrcCdqrpNVd8ENgFPqOpqVV2KZXMHR5y/XFX/pKo7VPVpYA5wepLrxT1fRHpiWeKtqrpdVacDDwOXhp53IfDLUDtWA78ELol3gRDbgAEi0llVN4cy0cgY/08oxhnAdEzQU13nHUzMwcT97ojt48ivtXIa9g0lKaq6RlVfUNWtqrop1KZIi2QHcICItFLV5ao6K8v2PAR8pKpjI/YNB/oC+wFfAq9ECPk7wFBV7QqcA3wPs6ucEsNFvnmyIuLxFmB5zHbbiO0lMc9diFknx0TYJx+nOj/0syaUmUceC1sPPbAsP/Z5ibgSGATMFpH3RCT2gycyps0RMSW7ziRgoIh0xT4UHgN6iUhnLON/B0BEPomI/egkbYyLiAwF1qlq7N8q3rmtReRvIlInIutCbagUEQn9Lb8LXAt8GbJyBiV9wfjXuA8YEnqtXajqBFWtV9UNwI2Y4A8OHatT1YWhx58CdwLnZnptp/C4yAebfHRW7h2z3RuzTiZE2CcHpDo/9NNJRNrEHAsL3VIg0g7oE9oHceJQ1fmqeqGq7gXcCzwbshxSkfA6qroF+BATtE9UtR4T/puAeaq6NnTe0IjY/5PGNWNJK4sPcQtmOx2mqpU0ZPESassbqjoCs8DmAOEKmLTuvYj8EjgZOElVk/UnSMzvZOc4JYSLfLBZBvSL2ZfpG7GriNwgIruLyHnYV/dkAlUV5/x/q+oXwETgbhFpKSIHYtn4P0LPewL4mYh0EZEuwM8jji0HOotI+11BiFwUOg9gPSZqO9OIMdl1AMYD19NgzdTGbMclFG8r7D21RyjGRO+vdP14sG8gW4ANItIJ6+cIX7OriJwZ8ua3Y52+4b/BcqBnuFM5QZtvx2yWE1V1XcyxISJykIhUiEhb4H7gC2BW6PgpoW88hDp6fwa8mGZMThPiIh9s7gF+LlY1c1NoX2yGl2r7PSyTXAX8CjgnnNEmYHKc88MC8j1gHyxzfg74uaqOCx37NfABEPbQPwDuAlDVOZg4LwjF0g04BfhURDYAfwC+q6pb04gp4XVCvIMJ6/iY7VR+/N8xW+gCrCN7M3Bx7Eki0gGzPCameL0wDwB7Yn/PiUR/wFZg3zKWhI4Px6wbgLexTtRlIhJpz0VyF9ahOy/CfrotdKwK6yhfD8wLnXeGqu4IHT8BmCEiXwGvAM9i/QVOiSGpFg0RkUeAM7AOtQND++4FvgVsxSoQLlfVDaHe91nA7NDTJ6vqdYVqvFNYROQy4Eqvhc4foW8356jqBcVui9M8SCeTH4V5dpGMBfZX1WqsXO72iGPzVHVY6McF3nGiWYt983CcJiGlyKvqBOwfM3Lfm6oa9v4mAz0jDnvni+MkIPTeea/Y7XCaD/nw5K8AXovY7isiU0VknIgck4fXd4qEqj7qVo3jlDc5zV0jIj8Ftqvq46FdS4HeqrpWRIYBL4rIkHilWSJS6nOROI7jlCSqmrZjknUmLyIjsVKwCyMuvD2ilngq1ik7MElDA/tzxx13FL0NHp/H1xzjC3JsqpnnxumKvBDhtYvIKdgQ5jO1oWyNUO1xRehxP2x+lAUZt8pxHMfJCyntGhF5HJu0qbOILALuwOqAWwBviAg0lEoOB+4UkW3YoIxrNGaQRXOhrq6u2E0oKB5feRPk+IIcWzakFHlVvTDO7lEJzn0eeD7XRgWB6urqYjehoHh85U2Q4wtybNmQcjBUwS4sosW6tuM4TrkiImhTdLw6juM4pY+LfIGora0tdhMKisdX3gQ5viDHlg0u8o7jOAHGPXnHcZwywj15x3EcZxcu8gUi6L6gx5cf1q6FU0+FZcua5HK7CPL9C3Js2eAi7zhF5OKLobbWfsI8/DD89KfFapETNNyTd5wisX497L23CfqSJfCXv9j+ESOgbVt43ocVOnFwT95xyoSFC6FPH/jmN2HCBNu3cSO8807T2zdOcHGRLxBB9wU9vtxZuBD69oVhw2DePMvs33zTsvtCi3yQ71+QY8uGnOaTdxwne+rqLJNv0QLOPBOGDIFNm+B3v4MbbwRVEF9nzckR9+Qdp0jccgvstRfceqsJ+mefQZcu0LmzefJffgnt2hW7lU6p4Z6845QJYU8eLGMfNMgEHqCqCpYvL17bnODgIl8ggu4Leny5E/bk49GtW2F9+SDfvyDHlg0u8o5TJCIz+ViqqrzCxskP7sk7ThHYvBk6dbLfFXFSreuug/33hx/8oOnb5pQ27sk7ThmwYIFZNfEEHgpv1zjNBxf5AhF0X9Djy42ZM61kMhGF7ngN8v0LcmzZ4CLvOEVg1qzkIt+9u0114Di54p684zQhO3fCV1/Bf/0XnHUWXHhh/PPmz4fjj7fOWceJxD15xylhHn0UTj7Z7JrBgxOft88+Ng3xmjVN1zYnmLjIF4ig+4IeX/osWwbbt9vjSZPgvffMrhk0KPFzKirgwANh+vS8NSOKIN+/IMeWDS7yjlNgrr3WMniADz6Ab33L6uP33DP586qrYdq0wrfPCTbuyTtOgTnhBJuu4LHHrDZ+/nyYMsU8+WQ8/LBNQTx6dJM00ykT3JN3nBJjyxZ46y346COzaLp3Ty3wYHbNjBmFb58TbFzkC0TQfUGPL302b7aKml/8Ag47LP3n9ehRuFr5IN+/IMeWDT6fvOMUmC1b4Lvfhfp6uPPO9J/XuTOsWuXzyju5kdKTF5FHgDOA5ap6YGjfvcC3gK3AfOByVd0QOnY7cAVQD9yoqmMTvK578k6zoHdvePfdxJORJaNNG6vO8XnlnTCF8ORHASfH7BsL7K+q1cBc4PbQxYcA5wODgVOBB0U8B3GaN5s3p66kSUSXLpbNO062pBR5VZ0ArI3Z96aq7gxtTgZ6hh6fCTypqvWqWod9AByev+aWD0H3BT2+9NmyBVq3zu65XbrA6tV5a8ougnz/ghxbNuSj4/UK4NXQ472BxRHHloT2OU6zRDV3kfdM3smFnEReRH4KbFfVJ/LUnsBQU1NT7CYUFI8vPbZuhT32gN12y+75hRL5IN+/IMeWDVlX14jISOA04PiI3UuAXhHbPUP74jJy5Ej6htY/q6yspLq6etcNCn/l8m3fLuftAw+sYc89s39+ly41rFpVOvH4dtNv19bWMjo0Iq5vovUik6GqKX+AvsDHEdunAJ8CnWPOGwJ8BLQA9gHmEargifOaGmTGjRtX7CYUFI8vPb74QrV79+yff+edqj/9aV6aEkWQ71+QY1NVDWlnWtqtqqntGhF5HJgIDBSRRSJyOfBnoC3whohMFZEHQ6o9E3gamIn59NeFGuU4zZJcKmvAPXknd3zuGscpIDNmwEUXwccfZ/f8Z56Bp56CZ5/Nb7uc8sXnrnGcEmLLltwy+fCoV8fJFhf5AhHuOAkqHl96bN6cffkkFM6uCfL9C3Js2eAi7zgFJNdMvksXWLkyf+1xmh/uyTtOAXn2WXjiCXjuueyev2ULdOwIX3+d33Y55Yt78o5TQuSaybdqBTt22KAqx8kGF/kCEXRf0ONLj1w9eRHo0AE2bMhLc3YR5PsX5NiywUXecQpILvPWhGnfPlrk6+th587E5ztOJO7JO04B+c1vbFWou+/O/jWqq2HUKDj4YNu+5ho4+mi49NL8tNEpL9yTd5wSohCZ/HvvFW5ZQCd4uMgXiKD7gh5feuTa8Qrmya9fb4+3bYOZM3P36IN8/4IcWza4yDtOAcm14xWiM/mZM2H7drOAHCcdXOQLRHjK0KDi8aXmpZdMjHPN5CNFfvp0m5s+10w+yPcvyLFlg4u84xSAujo4+2wYPz6/mfy0adYB65m8ky4u8gUi6L6gx5ecZ56BigpYtCh/nvyKFfD883Daae7JJyPIsWWDi7zjFICnn4Zrr7XH+crkR460ssmTT87/4CgnuHidvOPkmU2bbGKxujro1g0mTLC69mx57DEYOxb+9S9YuBCWLIELLoBPPslbk50ywuvkHafIfPWVWSxVVXDiiSb0udC+PXz+uXW4duwI7dp5Ju+kj4t8gQi6L+jxJWbjRmjb1h6/8Qb0759bW9q3t6qa8Ou0b597x2uQ71+QY8sGF3nHyTMbN0KbNvl7vQ4dzALq18+227UzkXe300kHF/kCEfRaXY8vMZGZfD5o395+hzP53XeHFi1soFW2BPn+BTm2bHCRd5w8UyiRD2fy4X1eK++kg4t8gQi6L+jxJabQmTzk3vka5PsX5NiywUXecfJMvkW+VSvYY4/Gmfy779rSgo6TDK+Td5w885e/wKxZ8L//m7/XfPJJOP98G0ULUFNjE5V16gQvv5y/6zilj9fJO06R2bQpv5k82OCnioh3a/v2MGUKLF2a3+s4wcNFvkAE3Rf0+BKTb7smHu3b2zKAX36Z3fODfP+CHFs2uMg7Tp5pCpFv186smpUrYceOwl7LKW/ck3ecPHP11XD44fa7UNx6q42C/egjm364e/fCXcspLTL15HcvZGMcpznSFJn8gAHQtSssW2aWjYu8k4iUdo2IPCIiy0VkRsS+c0XkExHZISLDIvb3EZHNIjI19PNgoRpe6gTdF/T4EtMUIn/11XDzzdCjR3adr0G+f0GOLRvS8eRHASfH7PsY+DbwTpzz56nqsNDPdbk20ClP5s5tvjMlNoXIh+nePfvOV6d5kFLkVXUCsDZm3xxVnQvE84XS9oqCTNDnz0gV3/e/X94DddK9f2PH2upPkTS1yGeTyQf5/zPIsWVDIapr+oasmnEickwBXt8pcXbssBruefNSn/vee7YIRjny7LNw6qkwZkz0fs/knVIi3x2vS4Heqro25NW/KCJDVHVjvJNHjhxJ3759AaisrKS6unrXp3DYVyvX7QceeCBQ8WQS3yefwMaNtUyaBJD49ZYtg2uuqeFnP4PDDiuf+MLbN90Ew4bVsGVL9PGNG+Hjj2tZvrzw7e3Ro4bXX/f/z8jtSE++FNqTj3hGjx4NsEsvM0JVU/4AfYAZcfaPA4YleV7C43bp4DJu3LhiN6GgJIvvoYdUDzpIdejQ5K9x3nmqAwao3nBDftuWD1Ldv6VLVTt2VP3Rj1TvuSf6WGWl6po1hWtbJJ99ptqtm2p9fWbPC/L/Z5BjU1UNaWda2q2qads1QmKvfdd+EekiIhWhx/2AAcCCjD95AkD4EzmoJItv0iS4+GKYPz/5whbTp8NllzX2tEuBVPfvnXdg+HDYc0/YsqVhv2r+Fw1Jxr772jKDEyZk9rwg/38GObZsSKeE8nFgIjBQRBaJyOUicraILAaOBF4RkddCpw8HZojIVOBp4BpVXVeoxjulgyocd5z5w2PGwJln2tD7RH7xjh22KPXw4bB4cX7bsnNn4UeB1tbaJGGtW8PXXzfs37YNRGxRj6bi/PPhmWcye87y5XDhhen1mzjlTTrVNReqag9VbamqvVV1lKq+qKq9VLW1qnZX1VND5z6vqkPVyicPVdVXCx9CaRLpCwaR2Pi++grGj4fTToMDDoCBA23+81gR2bkTzj3XSiw7d4ZBg/KfyY8aBf/zP7m9Rqr79/bbJvKtWkVn8oWYnCwVZ50Fr72W+rxIjj66lldegc8+K0ybiknQ33uZ4nPXOHlh7VqbT+Xjj+H6623fgAGNRf6DD+C55+Dpp+1DYK+97AMiUihzZfp0+OKL/L1eLHPnmiVz4IEm8pGZfFNW1oTp39/iTXeWkLVrrezyxBNzW0LQKQ9c5AtE0H3B2PjWroV99oGpU+Fb37J9w4bZwhaRvPYa7Lab1dD362fT5/bsmV/LZs4cWLMm/fOXLWuc+Se7f//+N5x+urW9devoD6g1a6CyMrP25kqrVvbBsmpVeud/+CEcemgNbdvaN4+gEfT3Xqa4yDt5Ye1a6NjRstuK0H/VeefBSy9FZ7qvvQaXXgqzZzcsZ9erV3FF/v774eGH0z//lVcaPshiM/nFiy2epmbvvdMfb2Aib53GnskHHxf5AhF0XzA2vnXrGmewPXrAQQc1+MVffGHifvPNth0W+d698+fLb9lir5WuyK9dawK/datZLWFqa2v5wx/gH/+IPl/VKlm++U3bjs3kiyXymcxh8+GH0Lp1LW3aBFPkg/7eyxQXeScvhDP5WC6+uCFLvv9+uPJKGDLE5kIPr1nau7dV2uSDefPM/klX5MePt2mBe/Uy2yaSRx+1Ua2RbNli31TatbPteJl8z57Ztz9bMsnkP/jAOrw9k28euMgXiKD7gvE8+Xgif+GFljm+8AKMHg033WQlhmPHwmGH2TkHHGCdpfngs8/g4IOthDKdzty5c2HwYOjWLbrcc+DAGubNsz6FnTsb9sd+YymVTH7vvdPL5OvrrY0XXVQTWJEP+nsvU1zknbwQz64BE8H//m9bo/Tee02MAA45xDpgw48/+CA/7Zgzx7LUzp3Ty+Y/+8wGFHXrFp3Jjx1r5aBdusAnnzTsj42zVDz5Hj3Sy+RXrbJvUbvtZpl8EDtenWhc5AtE0H3BcHwLFsC4cYkzeYAf/cjE9Kqr4h/v18/88OXLs2vLI480TGs8ZYp9aHTqlJ7Iz51rNf3du0eL/D//WcuIETbA652ICbVLPZPftg2+/W27L/FYudLKVmtr3ZNvLrjIO1kzYYJ1rF57bXKR32MP6NMn8euImDB/+GHmbdi61a7/t781dIoefXT6Ih+ZyUfaNTNn2usccUR0u+Jl8mGR37nTsulievK//CW8+GL0t49IwiIP7sk3F1zkC0SxfcEVK7J73sqV5pv//e/Jz6upqeHDD82GqaszGyCRyKfDoYcmt2w2b7YsdfPm6AFW06fb9Al/+hN8+qnVi/fsmZ7Ib9xo5/TqFW3XrFoFmzbVMGiQfcv4/POG58TL5MN2zcqV1pbWrTOLPR/06GED0R5/3Mo7E00nsWKFiXxNjXvyzQUX+QCyYYNVrKzLYtagX/8aXn4ZXk1jQoovv7QBUFVVJra5DAIaOtSy50Rcf72N0Dz3XOuo/clPbP/775s9sf/+cNFFcExoBYN0RH7ePCvjrKiInpf9/fftQ6eiwkQ+0vpIlskXq7IGbL3XW2+1+fmHDUvcCRubybsnH3xc5AtEMX3B2bPNxrD53DNj6lS45JLU/nhtbe2uBaT33dfOzyWT79Yt8bePnTttlGmHDia8H37YsOrU++9blc4//2mZ/vHH2/50Ol5nzzY/Pnz9cCY/ZQpUVdUCJtorVtjfE8yWSpTJv/22CWwxqKiAu+4ysU+2WtTKlXZObW1tYDN59+SjcZEPILNm2e/YKQVSsXOnZeQnn5xeJ+jSpQ0iD7mJfNeuiUV+2jR77Zdftp/+/e3aO3Y0iHyXLjBjBowcac/p1AlWr05+zdrahsw/nMkvWWIjWvfbz/bvvrsJfbiOPzaTb9nSPgB27DCL6+qrs/0L5I8ePRLbNZGZfFA7Xp1oXOQLRDF9wVmzrCok0znGFywwARs8OLXI19TU8OWXJihhkc/Frqmqin/NFSts1Okpp9i2iAlrp07WF7BggVk9YB284SkVUtk1qvD66zBihG137WqvPXgwfOMb8OMf1+w6N9KXjxX5igqbVnjsWLM/jjgiq/DzSqpMPpknv2NH+U8/7J58NC7yAWTWLLj8crNewjZDOkybZgOJ2rWzN3sqvzbSrmnZMrcOx86dzQrZts1KMgHWr7fqnf/8xxYXiaRXL3jrLRPgPfZo/HqpMvn58+1a++9v27vvbvFs2AB//KN57WH22afBl483HqBVK/PCjzvOPiiKTbqZfDyRv/vuBsvLCQYu8gWimL7grFlmYfToYdluunz0EVRXm1AlyqzDjB1by1dfmTjvt5/ZJbmw++4mzGPHmsj8+tfw4x/bbI9TptiHTyS9e8MbbzTYKrEcdJDZVevXJ2o/nHRSYlGOvH/9+tlrjRkTX+Rbt7b5csLiWWy6drUPuPr6xsci6+RjO17nzLEqpeXLowd4lRvuyUfjIh8wtm41wRkwIPnX9nhMmWJVJWBCkUjk33/f6rCrqsyu2HdfmDw597Z37WpZ+zHHmKh+/rmJfTx697ZMftCg+McHDrQRq/feG//4pEkNfnwqBg2y2TQvuaRxxytYJr94cemI/O6724dvvPuXzJN/4w04+2wb0xBZNvo//2P/G0554iJfIArlC6byyu++G4480nziZF/bY6mvN8vh6KNtu6oqcUfoLbfAgw/W0L17w758lA5WVZnIH3us+eVjx1rVSzx69TLBTZTJA9x5p1XhnHVW47nW33/fJiZLROT9O+ss+7u3amW1+KUu8hD/3u/YYX+zzp0tvpYtzbIKL5U4daoNSuvf3+ysMJMnR2+XOu7JR+MiX0ZMnmzilqj+fdo0q/B46inbziSTnz7dsuNOnWw7kV2zdq2JwaJFRIl8Puja1cR3wIDU5/bubb+TiXzv3mZd7befCXp4bpf1623a4yFD0mtXRYUNsjrqKLMxYquIWrc2kc/VssonPXpEr441f759I+natWHOIJHohcinTrUS0FiRX7nSVu9yyhMX+QJRCF/wt7+1r+Jjx8Y/vmyZVZpUVdl25ACfVLz7rmXQYRKJ/OuvWwfjEUfU0qNHZu1PRVWViWi4WicZYZFPZNeEadnS/m5XXWWDppYssTr76mr7WyYi3v076ij73aFD9P5Wrcz2KKVMfsiQ6KkNZs60v9mMGbYdji/sy3/9tU3xcMABjUV+1aroufZLHffko0nyb+6UEnV1VhL5q19ZHff55zc+Z8uW6AqXHj0sO0vFF1/Ak0/CDTc07KuqarzI8+23m/1x2212nYMOyiqUhHTtar/TyeQHDLCFtGMFNxG3327Z6AEH2HVOPTXz9h15pIliixbR+8N/81IS+WHD7J6GWbrUxDv220bYl1+82D5cW7Wy8958045v22bffDyTL188ky8Q+fYF33kHTjjBltR77bUGHzWSWJFPN5M/9VQTsHPOadgXm8kvWGCLf4waZQN+Lrushurq7OOJR1WViU4iHz6Sjh0bSi3TQcT6K+rqrBzzoouSnx/v/h16KPz+943PbdXKXj9sdZUChxwS/QG/ZEnDNM/QEF+4jHLaNHbdz/79G2rlw2Wo5STy7slH45l8mTBxog3S6d3bPOJVqxpsmTBbttibNky6S8ItXgy/+EV0bfi++9qEV2FGj7YFQMLL3hWCrl0tQy9krXn79pbVZ8Mee8D3v994f+vW1pkZ9rpLgX79rO/m7rvt287SpfE7msMi//nnDcsx9utnI3zr682Ph/Kya5xoPJMvEPn2BSdNavCEKyvjd75u3px5Jl9fb2/g2IqR6mr7mj59OnznO1Y/fcUVDccL4XvW1NhApFIgk/hatSotqwYsETj4YJvI7ZVXTOQj+1BiPfmFC6FvXzvWurX97yxY0FCVlE0mr9p4ScWmwD35aFzky4ANG+wNF/46nUjkY+2a9u1tPppkb9A1a+z1KmL+EyoqbCDS+efba7z3Xv49+FjatbNO3XKjdevSqqwJc9ZZ1s8ya5aJfKRdEybsyS9cGD3n/+DB9ryVK63zOhuRnzrVCgF8psvi4iJfIPLpC44ZY35wePh+uiIvkjqbX706sZd8+unmzd5zT+MqlqD7npnEV4qZPNggpvvvt2x6wYLoTD7Wk6+rayzys2dbJt+nT3Z2zRdf2P9XeCH3piLo/5uZ4iJf4qxebW/WX/6yYV+6Ig+N1y6N9/qdO8c/dtppNq98slp0x/7mpSjyYGWiAwfa/0a8NrZrZ4Peli+PzvQjM/l+/bLL5Jctsyqf+++PXyjgNA0u8gUiX77gI4+wa63RMJmIfKp51ZOJfMuWNu1wPILue2YSX6dOxVnXNV0GD7ZvdJGWXDi+I46wUstu3aInettvPxP5VatyE/nTT7f/r6b8dwn6/2ampBR5EXlERJaLyIyIfeeKyCciskNEhsWcf7uIzBWRWSLb/ZXWAAAdbklEQVQyohCNbk5MnNi4pjtTkU82G+OaNYlF3kmPW26xVZlKlSFDSDhwbcQIGwgXuwZvZCa/zz7Z2TXLltmHx6WXwmOPZf58Jz+kk8mPAmLzuY+BbwPvRO4UkcHA+cBg4FTgQZFSmHy16cmHL6hqIh+uqgmTTOQjSyghtcgny+STEXTfM5P4dt89+ejZYnPkkTQa0xCOr18/K50MV9aE6dzZynVfe81EPttMvls3+N73bIK3TKa9zoWg/29mSkqRV9UJwNqYfXNUdS4QK+BnAU+qar2q1gFzgSTTQDnJWLDALJNYKyBS5FessFGo8+Y1LqGEwom8Uz6MGAEPPZT4+CmnmNjH8u9/m8AfeKBl8qrRx8OLqy9ZYlVY4dWzwoRFvqrKvknMnp17LE7m5NuT3xtYHLG9JLSv2ZGrL7h+PTz7bOMsHkzk14Y+dq+7zjpm//rX7OyabEU+6L5nc4rvnnts7v5Y+vSxcRLhRWEipyX+9FPryG3Txr4FvPlm42kwli9vGL18wAHRg+sKSdDvXaYU9UvmyJEj6Rv6nlhZWUl1dfWur1rhG1Wu29OmTcvp+eecU8usWfDww42PV1bCggW1jBsH48fX8P3vw4cf1rJ0KbRuHX1+p041rF6d+HqrV9eEOsaaNr5S325O8bVtm/r8li1ref11+M53bPuuu2o56yx4/PEaduyA446rZdIkOOkkOz5uXC1LlkBVlW23aVPLq6/CxReXRvzltF1bW8vo0aMBdullRqhqyh+gDzAjzv5xwLCI7duAWyO2xwBHJHhNdRJz1FGq48fHPzZxouoRR6jOmqXat6/qU0+pnnuu7Zs4MfrcceNUhw9PfJ3jjlN96618tdoJKv362f/jzJmqO3ao9uqlOmNGw/FLL1UdNaphe/161XbtGrZfeEH1tNOarLmBJqSdaWm3qqZt1wiN/ffIY2H+BVwgIi1EZB9gABD4NWWmTrVRoflk8eLEZXlhT378eBg+vGG7Ke0ap3nRrh387Gc26vnII22eoQMOiD4e2Tkb9uPDHHBA9NTHTtORTgnl48BEYKCILBKRy0XkbBFZDBwJvCIirwGo6kzgaWAm8CpwXeiTJ7Ds3Aknnmjro0YS/rqVDfX1jQenRBIW9XfesTngO3QwD989+fzh8UXTrp1Vej3+OPzmN/a/F3s8VuQjJ9DbZx/7X0u05m4+Cfq9y5SUnryqXpjg0IsJzr8buDuXRpUTn31mnaDpLs6RDsuW2VwokYNTIgl3vL75pq2BunVrg8gnKqFUjZ7dcedOq8rZuLE0511xSou2be3/5/TTGycSYPMkRQp4bCZfUWHfAj74wKbMdpoOH/GaI5Mm2e/YqQPCHShg1ksmLF6cfM3U8JTAlZWWIYUz+XgllC1b2iIXkYNZwlbQH/5gIxEjpxhOl8j4gojHF027djZFQTyBDx9PZteAWYvjx2fWzmwI+r3LFBf5HJk82RawSJTJ19XZYJNt29J/zWR+PFhG1bFjw5QDyTx5aGzZTJ5sE5598IG9cR0nFe3a2XoGyY6nEvnjjmsakXeicZHPkUmT4MwzG4t82Bf8979h+3YT+3RJJfIQLfKtWpn9kkzkI+evmTPHhq3nQtB9T48vmssvtxXBEtG+vU2JHSaeyH/jG5ZYFHrka9DvXaa4yOfAokU22u+UUxJn8q+8YpZJeDm1dEhH5J980q4Lltl36GC2TEWcO9qpU3QmP2dO6gWwHSeSY45Jnhikk8m3b2+v4dl80+IinwP/+IcN5+7du7HI19TUsGkT/Oc/ti7r/Pnpv246In/QQdHLzXXokNgv3W8/m9O7vt628yHyQfc9Pb7MSEfkAX7wA5s2u5A1d0G/d5niIp8lqvDoo7YodPfu8eds//xzE+uDD04/k1+0yGYFPPjgzNpTWZlY5O+7z6aMvf9+a7dn8k6+adcutV0DcPHFViTwxhtN17bmjot8lnzxhf1TH3FEw8IckdlJbW0tGzZYhj1gQPqZ/FVXwU032XwhmdChQ+PyyTCtW9vi1S+8YPX3e+yR+wCooPueHl9mtG/fkMnv2GFTFHft2vi83XazPqzJk/N6+SiCfu8yxUU+Sz7/3MRbxES0VSub5CnSb9ywwf75+/dPnMmvW2frp4IJ8Pvvw803Z96eZHYNWPnarFlWMulZvJNvIu2a1avtm2WicR79+mVmXzq54SKfJXV10XNwd+8Ov/tdQ918TU0N69eb+PbrZ+dffbV11IaZPx8OOQTOPtu+Bbz+ug0USfTmSEYqkW/RAk46yaokLr8889ePJei+p8eXGW3b2liMnTsTWzVh+vcvrMgH/d5liot8lsSKfL9+tpbmypUN+8KZfOvWcMEFNtXqP/7RcPwnP7FVc1q1six7zJiGiplMSebJh7n+evsguuqq7K7hOInYbTezCzdtKr7IO9G4yGdJrMg/95yJ9ooVth325Nu3t+3Ro+Huu+GZZ6xz9bHHzDq5+WbL3l96CcaOTbymaipSZfJgg1F+8IPsXj+WoPueHl/mhC2bVCK/995mU27alPcmAMG/d5niIp8lsSLfqpUtohAWeWCXXRNm+HDrsD3kEKtz//Of7Wvu8cfDz39uHVLZLgidjsg7TiEJV9g88wwcnmQ9uIoKe+8sWNBkTWvWlPDKlKVNXZ3NGxNJ164Ndk1NTQ0vvhj9QbDbblbG2Lu3zR4Z5qSTbCbLBx7Ivj2dOtkHRlMRdN/T48ucdu3gX/+yVaOefTb5uWHLZuhQW32qsrLxOrPZEvR7lyku8llQX28dqLFZd9eu0Zl8pF0T5qKLGr/eXnuZH58L551na3k6TrFo394GOo0aZaO8kxGuOHviCfjhD63wYNmy6AF+Tn5wuyYLliwxQW/RInr/XntZJq8aXSffFOy5p1X4NBVB9z09vsxp184WBznvvNTnHn88PP+82Za//715+B98kJ92BP3eZYqLfBb8+c9mr8TSurWVP4brhdevb5zJO05Q+e534aGHotctSMTpp1v/1FtvWV/UqafCa68Vvo3NESnWwk0iUpaLRo0dC5dcYkuZ7bVX4+P9+1u9+4ABNhr2T3+y347jRHPPPTb477nnYNw4uO22hoGBTmJEBFVN46PUcE8+A15/HUaOhKefji/w0GDZDBgQ35N3HMe49daGaYePPtrWSt6xw335fON2TQa8+y5ce63Vmyci3PlaW1vbqIQySATd9/T4Co9Iw6pkLVrYGgmrVuX+uqUQWynhIp8BCxda+WMyIitsPJN3nPQJT/Tn5BcX+QxYuBD69El+TnhA1LHH1vD119CmTdO0rakJei2yx9f05EvkSzG2YuIinwGLFqUW+f32s8EgX31lJWXpVBo4jgNVVZ7JFwIX+TSpr4elS6Fnz+TnHX64VQiMGVMbaKsm6L6nx9f05CuTL8XYiomLfJosXWpWTOwAqFgGDbLOoy+/dD/ecTKhWzdbU8HJLy7yabJoUepOV7DJlw49FJYtqwm0yAfd9/T4mh735AuDi3yapNPpGuaII2ze9vPPL2ybHCdIeHVNYXCRT5NMRP7CC+Gmm2q58cbCtqmYBN339Piannx1vJZibMXERT5NVq1KPMo1lqFDbW4Ox3HSp1Ce/JIl8KMf5T7Ta7mScu4aEXkEOANYrqoHhvZ1BJ4C+gB1wPmqul5E+gCzgNmhp09W1esSvG5ZzV3z/e/DQQfZiFfHcfLPzp02AvbZZ+G002D3HCZdUW0oXz7hBFue8+c/T69frdTJdO6adDL5UUDsonS3AW+q6iDgbeD2iGPzVHVY6CeuwJcjW7b4ykuOU0gqKuC66+Caa2zCsmz5+GNLyFTt56OP4K67giHw2ZBS5FV1ArA2ZvdZwKOhx48CZ0ccC+Twn82bbc72dAm6L+jxlTelGt8DD9iUxdOmZfd8Vbjoolo+/tgs1qVL7RtB1675bWc5ka0n31VVlwOo6jIg8k/YV0Smisg4ETkm5xaWCJmKvOM42VFdbdl3NkydCqtXw8EH2/KCH39sC5k0Z/I11XDYXP8S6K2qa0VkGPCiiAxR1Y3xnjRy5Ej6hhZ2rKyspLq6eleNazjTKJXtpUtrmTMHzjgjvfPD+0ql/fne9vjKe7uU4zv4YLjjjlpqazN//pdf1nD00TWsWlXLyy9DZWUNBxxQWvFlul1bW8vo0aMBdullJqS1aEioQ/XliI7XWUCNqi4XkW7AOFUdHOd544CbVXVqnGNl1fF65JHwhz/AUUcVuyWOE2y2bbOFvVetyvzb869/DZs2Wadr69Ywd65NDX7llYVpazEoRMcrmM8e+aL/AkaGHl8GvBS6eBcRqQg97gcMABak25hSJtOO1/AncVDx+MqbUo6vRQub6C+bVaLmzYP6+lr69ze7ZupUOPDA/LexnEgp8iLyODARGCgii0TkcuAe4CQRmQOcENoGGA7MEJGpwNPANaq6rjBNb1rck3ecpuOHP7QFwd94I7PnzZsHe+9ty3C+8QasXQvDhhWmjeWCr/GaJnvvbZlFqlkoHcfJD089ZQuDZ1JO2a0bfPih1dz37g0//jH89reFa2MxKJRd0+zxOnnHaVq+/W1bm2Hu3PTO/+orW42te3dLytq0gUsuKWwbywEX+TTxOvloPL7yphzia9HCRPqf/0zv/PnzbWTr+PG1VFTYh8PQoYVtYzngIp+AnTvhxBNhzRp7vG1bw6LDjuM0Dccea/ZLIm64AZ580h7PnGnrOYTp3r2wbSsX3JOPYN48uPpq+6p39dVQUwMzZlh2sNdels07jtN0zJtnyVZdXfzjJ50EXbrAE0+Y4PfubZORBRn35HPgwQctE/j8cxg50vatXeuVNY5TLPbZB1auNK89HitXwptv2rftSZN8HEs8XORDbN8O/+//wS23wO9/b/PHDx1qIp9Np2s5eJ654PGVN+US3267wZAh1gEbjxUrYMcOmDjR7JpDDimf2JoKF3lsZN1118HAgTBggI1u/eILm/9i3TrP5B2nmAwdCp980ni/qmXyF1xg79+hQ70CLh75mrumrHnoIVtY4OmnG/b16AEdOzZk8pmKfOQcIUHE4ytvyim+RCK/bp2VSd53H/zqV9Crl+0vp9iaAhd5bDWak09u3BtfWdmQyXuG4DjFYeBAeOutxvtXrLCCiDZt4J57Gh93DLdrSLy0Xy6ZfNB9QY+vvCmn+Hr1sm/asaxYEX+e+HKKrSlwkcd8vXgiH5nJuyfvOMWhZ0/rI4tl5crmvRhIurjIY/8sXbo03h/O5LOxa4LuC3p85U05xde5s70HN2+Gr79u2J8oky+n2JoCF3kS2zWVldnbNY7j5AcRG6A4cWL0iNawJ+8kp9mLvKqJfKJMPtuO16D7gh5feVNu8fXsCS++CIsW2aIgixZZwYR78qlp9iK/YYNNhBRvXppcOl4dx8kfPXvCK6/Y40WL4LDD4LHH3JNPh2Yv8omsGsit4zXovqDHV96UW3w9e9oo9N13twnLNm2yxCze+g7lFluhafZ18okqawDatrWOnvXr49s5juM0DWExP+44eP112H9/W/mpXbvitqscaPaZfKLKGrAOn8pKWLrU6+Rj8fjKm3KLr2dPaN/eZoYdO9bWgG3f3t6jsZRbbIWm5EVe1ZYBK9SsxMkyeTBffulSH/HqOMWkuhouvxz69rWqmsgqGyc5JS/yq1bZBETTpxfu9VOJ/Ecf2dDpTAi6L+jxlTflFl/fvvDAA/YbLJNPRLnFVmhK3pNfuNB+//Of9mmeb5LZNQB//zssWGALFziOU1z69LHfnsmnT8ln8gsX2qf244/bvNH5ZupUGDw48fGDDrIFhTPt4Am6L+jxlTflGl+PHpbsDRiQ+Jxyja1QlIXIjxhhdsns2fl97Q0bYMoUOP74/L6u4ziFYbfdzD5t2bLYLSkfSn6N1xtvtK9o48fDxRfDuedGH1+50gZF3HxzetdVbeiRf+EF+OtfrbfecRynHCjrNV6/+sqW4Ytk4UIT+SFDbHmvWKZOhdGj03v9adNsUe6vvrLt116D007LqcmO4zglTcmI/KuvmgBfcAHMmmWj2qBB5AcPtv1btkSXUy5davtSUV8PV1xh5z7/vO2bOrVwC/8G3Rf0+MqbIMcX5NiyoWRE/uc/h//9XxPtQw+Fq66y/bGZ/EknwRNPNDzvyy9t2oFUTJhgHw5//jM8+qit7j57dvJSLMdxnHKnJDz57duhQwerWa+vh61brarl5Zdh+HDYuNGEvEMHq7C54Qb405/sda6/3sor161Lfr1f/co6Wn/9a+jWzXz4s86yDxXHcZxyIe+evIg8IiLLRWRGxL6OIjJWROaIyOsi0iHi2O0iMldEZonIiHQaMXu2Zet77mlDlffayzpYzzkHvvlN6yht08aGNo8YYTZLmHTtmnffhWOPtV754cPhb3/zLN5xnOCTjl0zCjg5Zt9twJuqOgh4G7gdQESGAOcDg4FTgQdF4s0uEc20aY0HOl1xhe2LtGb+8hcbnDR9ekPN/NKlsG2bfQNIRH09TJ4MRx9t28cdZ3X3yerjcyXovqDHV94EOb4gx5YNKUVeVScAa2N2nwU8Gnr8KHB26PGZwJOqWq+qdcBc4PBU14gn8tXVtkhA5CCkM86A3r2hqgo++8z2he2WZNn89Om2GHDnzrZdU2PneybvOE7QybbjtauqLgdQ1WVAeOr+vYHFEectCe1LykcfZTZlwbBhlpnv3AnLlpnFk0zkFy6EgQMbtg86yPz9Qop80OfP8PjKmyDHF+TYsiFfc9dk1Xs7cuRI2rTpy3vvwdSplbRsWb3rBoW/csXb/q//gnPPrQ0JfA1t2sDbb9fSrVv889esga1ba6mtte3ddoPbb69l506A1Nfzbd/2bd8u1nZtbS2jQ4OB+oZnaMsEVU35A/QBZkRszwKqQo+7AbNCj28Dbo04bwxwRILX1ClTVM8+W/W++zRjnn1WtV071aFDVffbT/XTTxOfe++9qjffnPk1cmHcuHFNe8EmxuMrb4IcX5BjU1U12U6t2+GfdO0aCf2E+RcwMvT4MuCliP0XiEgLEdkHGABMSfSi558Pc+fCD36QZisiOOccG63ao4dV5SSza9asgU6dMr+G4zhOuZOyTl5EHsc8jc7AcuAO4EXgGaAXsBA4X1XXhc6/HbgS2A7cqKpxZ4YRET3hBGXUKOsUzYb1620w1FVXwd13W4lkPK65xjz/a6/N7jqO4zilQqZ18ik9eVW9MMGhuDOsq+rdwN3pXPzNN9M5KzEdOthPqkx+7VrP5B3HaZ6UzLQGubDnnsmnNiiGXRPuOAkqHl95E+T4ghxbNgRC5Fu3Ti3yHTs2XXscx3FKhZKYuyZXrrwSvvEN+x2PffaBt96yWS4dx3HKmbKeTz5bStGucRzHKQUCIfLJ7Jr6eti0yUbFNiVB9wU9vvImyPEFObZsCITIJ6uuWbfOKnAqAhGp4zhOZgTCk7/3XpuL/t57Gx/77DMbNDVvXl4u5TiOU1SapSefzK7xGnnHcZozgRD5ZHZNsTpdg+4LenzlTZDjC3Js2RAYkU+Uya9a5TXyjuM0XwLhyb/4IowaBS+9FL1/5kxbLvC+++B738vLpRzHcYpKs/TkY+2aq66CMWNswe/bbnOBdxyn+RIYkQ/bNTt2wNNPw6WXwvz5NgNlMQi6L+jxlTdBji/IsWVDvlaGKirh6poXXrCpC7p3h8MOgxNOgD32KHbrHMdxikcgPPlZs2zd1u3bbTGRNm3g0UdTP89xHKfcaLae/PbtUFMDzz0HRx5Z7BY5juOUBoEQ+c6d4eSTrcqma1c45phityj4vqDHV94EOb4gx5YNgfDk27a1ahqAujrz6B3HcZyAePKO4zjNhWbpyTuO4zjxcZEvEEH3BT2+8ibI8QU5tmxwkXccxwkw7sk7juOUEe7JO47jOLtwkS8QQfcFPb7yJsjxBTm2bHCRdxzHCTDuyTuO45QR7sk7juM4u8hJ5EXkRhH5OPTz36F9d4jIFyIyNfRzSn6aWl4E3Rf0+MqbIMcX5NiyIWuRF5H9gSuBQ4Fq4AwR6R86fL+qDgv9jMlDO8uOadOmFbsJBcXjK2+CHF+QY8uGXCYoGwy8p6pbAURkPPCd0LG0/aKgsm7dumI3oaB4fOVNkOMLcmzZkItd8wlwrIh0FJE9gdOAnoAC14vINBF5WEQ65KOhjuM4TuZkLfKqOhv4LfAG8CrwEbAD+CvQT1WrgWXA/XloZ9lRV1dX7CYUFI+vvAlyfEGOLRvyVkIpIncBi1X1oYh9fYCXVfXAOOd7/aTjOE4WZFJCmdOiISKyl6quFJHewLeBI0Wkm6ouC53yHczWyamRjuM4TnbkujLUcyLSCdgOXKeqG0TkLyJSDewE6oBrcryG4ziOkyVFG/HqOI7jFB4f8eo4jhNgXOQdx3ECTK6efNqIyH7AWcDeoV1LgH+p6qymaoPjOE5zo0k8eRG5Ffge8CTwRWh3T+AC4ElVvafgjSggoQFftwNnA12xAWErgJeAe1TVh+A5RUNEBDic6ARrSlCmgfX4Ujy/iUT+M2B/Vd0es78F8Kmq7lvwRhQQEXkdeBt4NFw+KiLdgMuAE1R1RDHblw/8jVSeiMgI4EFgLhYTWII1AKuIG1ustuUDjy91fE0l8rOBk1V1Ycz+PsBYVR1U8EYUEBGZkyiGZMfKBX8jlW98IjILOFVV62L27wO8qqqDi9KwPOHxpY6vqTz5HwJvichcYHFoX2/sTXR9E7WhkCwUkR9jmfxyABGpAkbSEG8580fgxET/aNhkdeVMkOPbnQaLNJIlwB5N3JZC4PGl8QIFR1XHiMhAGn8dfl9VdzRFGwrMd4HbgHdC4q7AcuBfwPnFbFie8DdS+fJ/gfdF5EkaEo5eWH/YI0VrVf7w+FLgg6EKgIgci32gfVzOX/XDiMjt2IdVvH+0p1X17mK1LR80g/iGAGfSuLJtZvFalT9EZDDxK/eCEl9O989FPg+IyBRVPTz0+CrgB8CLwAhsgrayrh4CFwrHKVdc5POAiHykqgeHHr8PnBaauK0NMFlVDyhuC53mStDLe0XklPDqc6FYf499i/4E+J9wH1m5ko/75yNe80NFaPGUzsBuqroSQFU3AfXFbVruiEgHEblHRGaLyBoRWS0is0L7KovdvlyJXIc4FOvDIjJDRB4P9bGUM08Da4EaVe2kqp2Bb4b2PV3UluWH30Q8/j22hsW3gPeBvxWlRfkl5/vnmXweEJE6bNZNwT5pj1bVL0WkLTAhtIBK2RL0cQAiMlVVh4UeP4wJxd+xqbKPU9Wzi9m+XGgG5b2R925a5Hstdrscycf9a7JpDYKMqvZNcGgnNs9+udNXVX8buSMk9r8VkSuK1KZCcWiEMPxBRC4ramtyJ+jlvV1F5CYsweogIhIxgC0ITkXO9y8If4SSRVU3q+rnxW5HHlgoIj+OtC5EpCo0XUVghEJEbiYkFBHHyv098l2gM1beu1ZE1gC1QCeCUd77d6Ad0BYYDXSBXd80pxWvWXkj5/vndo2TEhHpiI0DOAvr/IGGcQD3qOraYrUtH4jIHTG7Hgx1nHcD7lXVS4vRrnwRmhywJ1YEsDFi/65Oy3ImFN/ewHsBje9wQFX1fRHZHzgFmKWqr6b1fBd5JxdE5HJVHVXsdhSKco9PRP4bK+mdBVQDN6rqS6Fju/zsckVEbsBGzQc1vjuAUzFr/Q2scqgWOAl4XVXvSvkaLvJOLojIIlXtXex2FIpyj09EPgaOUtWNItIXeBb4h6r+MbL0t1xpJvFVAy2xgoCeoWVWW2PfXA5M9Rre8eqkRERmJDoElHuJYdDjqwhbGKpaJyI1wLOhyQEl6TPLg6DHVx+a+mWziMxX1Q0AqrpFRHam8wIu8k46VAEnY7W5kQgwsembk3eCHN9yEalW1WkAoYz3DGxOlCAM0gt6fNtEZE9V3QwcEt4ZGiTlIu/kjVeAtuE3UiQiUtv0zck7QY7vUmIG5KlqPXCpiARhsFDQ4xuuqlsBVDVS1PfAxqmkxD15x3GcAFPuNcCO4zhOElzkHcdxAoyLvOM4ToBxkXccxwkw/z+Ws4LkaKG2swAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xac770b4c>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Geometric  mean rate: 4.0988\n",
      "Arithmetic mean rate: 5.4955\n",
      "sigma: 16.6041\n",
      "kurtosis (Pearson): 6.1374\n",
      "GM(2), sigma1: 15.8135\n",
      "GM(2), sigma2: 58.1144\n",
      "GM(2), q:  0.0082\n",
      "GM(2), b:  3.5\n",
      "yearly: 256\n",
      "N: 255\n",
      "---------------------------------------1\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xa849948c>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Geometric  mean rate: -41.6493\n",
      "Arithmetic mean rate: -38.5637\n",
      "sigma: 17.3047\n",
      "kurtosis (Pearson): 7.5373\n",
      "GM(2), sigma1: 16.0995\n",
      "GM(2), sigma2: 60.5664\n",
      "GM(2), q:  0.0118\n",
      "GM(2), b:  3.5\n",
      "yearly: 256\n",
      "N: 255\n",
      "---------------------------------------2\n"
     ]
    }
   ],
   "source": [
    "#  ENCOURAGE RE-RUNS of this cell\n",
    "#  showing one-year of simulated price histories...\n",
    "\n",
    "fe.bs.bootshow(256, poparr, repeat=3)\n",
    "\n",
    "#  ... like playing with a kaleidoscope."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Small-sample study of \"geovolatility\"\n",
    "\n",
    "*Volatility* is the term in general use for the\n",
    "square root of the variance of the *arithmetic* mean rate.\n",
    "\n",
    "We shall define \"**geovolatility**\" to be the\n",
    "square root of the variance of the *geometric* mean rate.\n",
    "\n",
    "Bootstrapping facilitates the study of small-sample behaviour\n",
    "for which asymptotic statistical theory is unsuitable,\n",
    "or where closed-form mathematical analysis is intractable."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mSignature:\u001b[0m \u001b[0mfe\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mbs\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msmallsample_gmr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mN\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mpoparr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myearly\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m256\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrepeat\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m100\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minprice\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m1.0\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreplace\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
       "\u001b[0;31mSource:\u001b[0m   \n",
       "\u001b[0;32mdef\u001b[0m \u001b[0msmallsample_gmr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mN\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mpoparr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myearly\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m256\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrepeat\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m100\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m                    \u001b[0minprice\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m1.0\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreplace\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0;34m'''Demo small sample statistics: repeat geometric mean rates.'''\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0mssarr\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mones\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrepeat\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m  \u001b[0;31m# small sample array to fill-in.\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0;32mfor\u001b[0m \u001b[0mi\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mrange\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrepeat\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m        \u001b[0mprices\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mbsret2prices\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mN\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mpoparr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minprice\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0minprice\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreplace\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mreplace\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m        \u001b[0mout\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mgemrat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mprices\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myearly\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0myearly\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mpc\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mFalse\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m        \u001b[0mssarr\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mout\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0;31m#  For user's convenience, we convert array to DataFrame format:\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0;32mreturn\u001b[0m \u001b[0mtool\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtodf\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mssarr\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
       "\u001b[0;31mFile:\u001b[0m      /media/yaya/virt18g/virt/dbx/Dropbox/ipy/fecon236/fecon236/boots/bootstrap.py\n",
       "\u001b[0;31mType:\u001b[0m      function\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fe.bs.smallsample_gmr??"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "#  Large \"repeat\" values obviously increases computing time...\n",
    "\n",
    "ss = fe.bs.smallsample_gmr(256, poparr, yearly=256, repeat=300)\n",
    "#  Repeatly generate daily prices for one-year, record gmr each time."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "                Y\n",
      "count  300.000000\n",
      "mean     0.031953\n",
      "std      0.173524\n",
      "min     -0.782441\n",
      "25%     -0.063238\n",
      "50%      0.046733\n",
      "75%      0.141318\n",
      "max      0.450167\n",
      "kurtosis  6.507513\n"
     ]
    }
   ],
   "source": [
    "fe.stat(ss)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xa86b892c>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#  Quantile-Quantile plot of geovolatility\n",
    "fe.plots.plotqq(ss)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Analytically the geometric mean rate should decrease\n",
    "as volatility and kurtosis increases\n",
    "(think of the arithmetic mean rate being\n",
    "penalized by risk factors).\n",
    "\n",
    "The Quantile-Quantile plot shows that the\n",
    "geometric mean rate is clearly not distributed normally.\n",
    "(This is expected since the same goes for the\n",
    "arithmetic mean rate.)\n",
    "\n",
    "What is remarkable about the Q-Q plot is that the\n",
    "geometric mean rates show the greatest deviation\n",
    "from normal behavior (green line) on the downside.\n",
    "This captures the frequent observation by traders that\n",
    "there is more *violence* (extreme absolute percentage changes)\n",
    "during sell-offs to the bottom that blow-offs to the top."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.17352364223386499"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#  Compute \"geovolatility\" per our definition.\n",
    "geovol = fe.std(ss)\n",
    "geovol"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1.119969808397435"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "geovol / fe.bs.SPXsigma"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We are most interested in the **relationship\n",
    "between geovolatility and volatility**.\n",
    "\n",
    "Since this is only an informal demonstration, let's just\n",
    "*hypothesize that geovolatility is larger than volatility*\n",
    "(say between 10% and 20% more), given U.S. stock market conditions\n",
    "over the last 51 years, for short-term price paths.\n",
    "\n",
    "Thus, **there is more *uncertainty* surrounding the geometric mean rate,\n",
    "relative to the arithmetic mean rate, especially during downturns.**\n",
    "\n",
    "More formal small-sample studies should adopt\n",
    "Bradley Efron's recommendations in regards to methodology.\n",
    "All the necessary tools are available in fecon236."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Bootstrap to estimate probability\n",
    "\n",
    "Probabilities are difficult to calculate analytically,\n",
    "especially for non-symmetrical non-Gaussian processes.\n",
    "Bootstrapping can help here.\n",
    "\n",
    "For example, relative to an investment made at current price,\n",
    "***what is the probability that an asset will reach below\n",
    "a certain price level during some fixed time duration?***\n",
    "\n",
    "The gist of the next function is the conditional `prices < level`\n",
    "embedded in the pandas syntax.\n",
    "\n",
    "In the general, complex questions regarding probability may be asked\n",
    "by forming conditionals, which in turn, will have applications,\n",
    "for example, in pricing exotic derivatives."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mSignature:\u001b[0m \u001b[0mfe\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mbs\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msmallsample_loss\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mN\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mpoparr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myearly\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m256\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrepeat\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m100\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlevel\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m0.9\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minprice\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m1.0\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreplace\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
       "\u001b[0;31mSource:\u001b[0m   \n",
       "\u001b[0;32mdef\u001b[0m \u001b[0msmallsample_loss\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mN\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mpoparr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myearly\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m256\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrepeat\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m100\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlevel\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m0.90\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m                     \u001b[0minprice\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m1.0\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreplace\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0;34m'''Demo small sample statistics: probability of loss: price < level.\u001b[0m\n",
       "\u001b[0;34m       Relative to investment at initial price, inprice.\u001b[0m\n",
       "\u001b[0;34m    '''\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0mssarr\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mones\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrepeat\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m  \u001b[0;31m# small sample array to fill-in.\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0;32mfor\u001b[0m \u001b[0mi\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mrange\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrepeat\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m        \u001b[0mprices\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mbsret2prices\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mN\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mpoparr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minprice\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0minprice\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreplace\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mreplace\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m        \u001b[0mcount\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mprices\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mprices\u001b[0m \u001b[0;34m<\u001b[0m \u001b[0mlevel\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdropna\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mshape\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m        \u001b[0mprob\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcount\u001b[0m \u001b[0;34m/\u001b[0m \u001b[0mfloat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mN\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m        \u001b[0mssarr\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mprob\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0;31m#  For user's convenience, we convert array to DataFrame format:\u001b[0m\u001b[0;34m\u001b[0m\n",
       "\u001b[0;34m\u001b[0m    \u001b[0;32mreturn\u001b[0m \u001b[0mtool\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtodf\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mssarr\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
       "\u001b[0;31mFile:\u001b[0m      /media/yaya/virt18g/virt/dbx/Dropbox/ipy/fecon236/fecon236/boots/bootstrap.py\n",
       "\u001b[0;31mType:\u001b[0m      function\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fe.bs.smallsample_loss??"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Example: prob(Loss > 10% during 10-year horizon)\n",
    "\n",
    "The estimated probability will vary according to the\n",
    "market conditions which are parameterized to produce poparr."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "#  Invest at inprice, then\n",
    "#  assuming market conditions embedded in poparr:\n",
    "lossprob = fe.bs.smallsample_loss(2560, poparr, yearly=256, repeat=500, level=0.90, inprice=1.0)\n",
    "\n",
    "#  ... effectively simulates 5,000 years of bootstrapped daily data."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "                Y\n",
      "count  500.000000\n",
      "mean     0.126914\n",
      "std      0.225565\n",
      "min      0.000000\n",
      "25%      0.000000\n",
      "50%      0.007227\n",
      "75%      0.151172\n",
      "max      0.968359\n",
      "kurtosis  6.808142\n"
     ]
    }
   ],
   "source": [
    "fe.stat(lossprob)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The mean probability of loss is around 13%,\n",
    "but the median probability is around 1%.\n",
    "This could lead to complacency with respect to risk,\n",
    "as the next graph shows that a fifth\n",
    "of subsamples meet outcomes far worst\n",
    "than being submerged 10% temporarily."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xa848ea6c>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#  toar() is for conversion to numpy array:\n",
    "probarr = fe.toar(lossprob)\n",
    "fe.plotn(fe.np.sort(probarr), title=\"tmp-SORTED-prob\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### SUMMARY\n",
    "\n",
    "(Please see top of this notebook.)\n",
    "\n",
    "---\n",
    "\n",
    "### APPENDIX 1: Hybrid population of empirical and synthetic returns\n",
    "\n",
    "Thus far the source of our \"population\" has been truly empirical.\n",
    "The idea in this appendix is to mix in synthetic data derived\n",
    "from a theoretical model of the market.\n",
    "\n",
    "We can express anticipated market conditions by altering the\n",
    "parametization of the population array, and also by\n",
    "overlaying the structure of a theoretical model to\n",
    "produce hybrid results.\n",
    "\n",
    "\n",
    "#### A look at the synthetic Gaussian Mixture\n",
    "\n",
    "We covered the mathematics and fitting of GM(2) models\n",
    "in detail at https://git.io/gmix -- here we focus\n",
    "on generating synthetic GM(2) returns algorithmically.\n",
    "The code is located in this module: `fecon236/fecon236/prob/sim.py`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "#  This show is generated purely by algorithm.\n",
    "#  Empirical returns and bootstrapping are NOT involved.\n",
    "\n",
    "#  Uncomment for the show:\n",
    "#  fe.sim.gmixshow(N=256, mean=fe.bs.SPXmean, sigma=fe.bs.SPXsigma, yearly=256, repeat=3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Feeding the historical gross descriptors back into GM(2),\n",
    "it visually appears as though we have synthetically generated\n",
    "returns from a ***jump-diffusion process***, sometimes characterized\n",
    "by \"choppy\" returns, self-similar to minute transactional data\n",
    "or returns in liquid markets during periods of extreme uncertainty.\n",
    "\n",
    "We can express our own pseudo-Bayesian prior\n",
    "with respect to the empirical distribution\n",
    "by appending *custom* synthetic returns to empirical returns.\n",
    "\n",
    "In the next cell, we shall express a complete reversal of the mean,\n",
    "such that the hybrid population has mean zero.\n",
    "The number of synthetic returns to be appended shall equal\n",
    "the number of empirical returns, thus doubling the population size."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "#  The mean and sigma arguments are the gross descriptors of the GM(2).\n",
    "#  But note here that the sign of the mean here is REVERSED.\n",
    "poparr2 = fe.bs.hybrid2ret(poparr,\n",
    "                           mean=-fe.bs.SPXmean, sigma=fe.bs.SPXsigma,\n",
    "                           yearly=256)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(32084,)"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#  Population size should double, expect (32084,)\n",
    "poparr2.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xa86a0e8c>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Geometric  mean rate: -8.2519\n",
      "Arithmetic mean rate: -5.938\n",
      "sigma: 17.5196\n",
      "kurtosis (Pearson): 25.1325\n",
      "GM(2), sigma1: 10.2788\n",
      "GM(2), sigma2: 61.3187\n",
      "GM(2), q:  0.0551\n",
      "GM(2), b:  3.5\n",
      "yearly: 256\n",
      "N: 255\n",
      "---------------------------------------0\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xa846eb4c>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Geometric  mean rate: 10.0225\n",
      "Arithmetic mean rate: 11.0864\n",
      "sigma: 14.5729\n",
      "kurtosis (Pearson): 13.7587\n",
      "GM(2), sigma1: 12.028\n",
      "GM(2), sigma2: 51.0053\n",
      "GM(2), q:  0.0276\n",
      "GM(2), b:  3.5\n",
      "yearly: 256\n",
      "N: 255\n",
      "---------------------------------------1\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xa842b9ac>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Geometric  mean rate: 0.4107\n",
      "Arithmetic mean rate: 1.8471\n",
      "sigma: 16.3552\n",
      "kurtosis (Pearson): 7.8755\n",
      "GM(2), sigma1: 15.1278\n",
      "GM(2), sigma2: 57.2434\n",
      "GM(2), q:  0.0127\n",
      "GM(2), b:  3.5\n",
      "yearly: 256\n",
      "N: 255\n",
      "---------------------------------------2\n"
     ]
    }
   ],
   "source": [
    "#  ENCOURAGE re-running this cell, like playing with a kaleidoscope:\n",
    "fe.bs.bootshow(256, poparr2, repeat=3)\n",
    "\n",
    "#  Visually see the increased \"choppiness\" due to GM(2) overlay.\n",
    "#  Local \"downtrends\" are more likely. "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Example: prob(Loss > 10% during 10-year horizon)\n",
    "\n",
    "Repeat the earlier experiment, but instead ***with the hybrid population***."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [],
   "source": [
    "#  Invest at inprice, then\n",
    "#  assuming market conditions embedded in poparr2:\n",
    "lossprob2 = fe.bs.smallsample_loss(2560, poparr2, yearly=256, repeat=500, level=0.90, inprice=1.0)\n",
    "\n",
    "#  ... effectively simulates 5,000 years of bootstrapped hybrid daily data."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "                Y\n",
      "count  500.000000\n",
      "mean     0.423160\n",
      "std      0.346069\n",
      "min      0.000000\n",
      "25%      0.075000\n",
      "50%      0.369531\n",
      "75%      0.767188\n",
      "max      0.989453\n",
      "kurtosis  1.498012\n"
     ]
    }
   ],
   "source": [
    "fe.stat(lossprob2)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The mean probability of loss for the hybrid population is around 42%,\n",
    "which is far higher than 13% for the empirical population.\n",
    "This was expected since our synthetic data overlayed a\n",
    "negative view of the market (but the magnitudes were not\n",
    "easy to estimate, cf. mean versus median, relative to std)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xa857c24c>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#  toar() is for conversion to numpy array:\n",
    "probarr2 = fe.toar(lossprob2)\n",
    "fe.plotn(fe.np.sort(probarr2), title=\"tmp-SORTED-prob\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "---\n",
    "\n",
    "### Questions or bugs?\n",
    "\n",
    "- Chat with fellow users at Gitter: https://gitter.im/rsvp/fecon235\n",
    "\n",
    "- Chat with fellow developers at Gitter: https://gitter.im/MathSci/fecon236\n",
    "\n",
    "\n",
    "- Report issues regarding our Jupyter notebooks at https://github.com/rsvp/fecon235/issues\n",
    "\n",
    "- Report issues regarding our Python code at https://github.com/MathSci/fecon236/issues\n",
    "\n",
    "- Please see https://git.io/econ for orientation and installation details."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.14"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
